import { UploadFile, UploadFiles, UploadRawFile } from "element-plus";
import { IOptions, ITree, IIconOptions, IUploadHeaders } from "@ainiteam/quick-vue3-ui";

export interface IFormTitle {
    add: string;
    edit: string;
    detail: string;
}
export interface IFormItem {
    label?: string;
    value?: string;
    vModel: string;
    placeholder?: string;
    labelWidth?: string;
    type?: string;
    autocomplete?: string;
    options?: IOptions[];
    iconOptions?: IIconOptions[];
    treeOptions?: ITree[];
    addHidden?: boolean;
    editHidden?: boolean;
    detailHidden?: boolean;
    addReadonly?: boolean;
    editReadonly?: boolean;
    detailReadonly?: boolean;
    addDisabled?: boolean;
    editDisabled?: boolean;
    detailDisabled?: boolean;
    actionUrl?: string;
    headers?: IUploadHeaders;
    prop?: string;
    rules?: any;
    width?: string;
    maxLength?: string;
    placeholders?: Array<string>;
    multiple?: boolean;
    clearable?: boolean;
    format?: (value: string) => any;
    change?: (value: string) => void;
    select?: (value: string) => void;
    success?: (
        response: any,
        uploadFile: UploadFile,
        uploadFiles: UploadFiles
    ) => void;
    beforeUpload?: (rawFile: UploadRawFile) => void;
    id?:string;
    btnText?:string;
    click?: (value: string) => void;
}
